#ifndef FRAMEWORKWORKER_H_
#define FRAMEWORKWORKER_H_

#include "zthread/Runnable.h"

class Framework;

/** Thread that implements the run() function of the framework class as a thread.
 */
class FrameworkWorker : public ZThread::Runnable
{
    public:
        FrameworkWorker(Framework *); /**< Constructor requres a framework to run with                 */
        void run();                   /**< Run function of the framework class implemented as a thread */
        void requestHalt();           /**< Signals the worker to stop next chance it can               */
    
    private:
        Framework *framework;
        bool exitSignal;
        
};

#endif /*FRAMEWORKWORKER_H_*/
